Coordinating linked activities (collaboration) is increasingly important to competitive advantage. Through collaboration, an enterprise can reduce transaction costs, gather better information, save operational costs and reap time efficiencies. Applications that facilitate collaborative computing include e-mail, group calendaring and scheduling, shared folders/databases, threaded discussions, and custom application development.
Collaborative systems today are primarily host peer device based and an example of a model used is the synchronization model, wherein a host peer device holds the master version of data and users work on local versions of the data. At intervals, a user connects to the host peer device and the local version of the data is synchronized with the master version of the data. This model is often used for Personal Information Management (PIM) applications e.g. calendar, email etc.
Another computing model that has become popular in recent years is the peer-to-peer (P2P) model. This model is decentralized and comprises a number of “peers” interacting with each other, wherein a peer is similar in capabilities to other peers. P2P computing has enabled data sharing without a host peer device and with the increase of personal and mobile technology (e.g. mobile telephones, Personal Digital Assistants (PDAs) etc.) there is a need to support collaborative computing but in a disconnected P2P environment.
However, since there is no central host peer device with control over the peers or the data in the system, the P2P model faces problems that are not present in the synchronization model, for example, data tracking.